Quiver runs best in 16 bit or Thousands of colours.
Reasons to Register
• Support the hard work of one person to keep the MacQuake community alive
• Sleep easier at night without a troubled conscience :-)
• No annoying reminder messages
• No limit to the number of brushes that can be Built
• Export .map files
• Transparent water
• Light-sourced preview
• All future updates are free
Introduction
(Refer to the Tutorials if you would prefer a quick start!)
Basic Concepts
Quake levels consist of two types of objects, brushes and entities. Objects can be put into groups to help manage the level.
Brushes are solid building blocks that are used to create the physical structure of the level. For example, floors, ceilings, steps, and bridges would all be made of brushes. There are five tools to create brushes from scratch. Boxes, cones, cylinders, spheres, and wedges can be created. Brushes are created with these tools simply by clicking and dragging in one of the rendered views (eg. Top, Front, Side, Iso, etc). Remember that brushes are solid so creating a single box for a room will produce a solid block. You would need to either hollow it out, or create the walls/ceiling/floor piece by piece. Brushes default to having a standard brick texture on each face. Different textures can be applied by first selecting the brush, then clicking on a new texture. Certain textures are special and indicate that a brush should not be solid, but instead should allow the player to enter them, eg. liquid brushes (water/slime/lava), and invisible triggers.
Entities are generally objects that do something or serve some purpose. There are two types of entities, ones that contain brushes, and ones that don’t. Entities containing brushes are groups that add some kind of extra function to brushes that would otherwise be fixed in the level structure. These entities can be created by selecting one or more brushes and choosing Convert to Entity… from the Special menu. Examples of these are moving doors/elevators/platforms, buttons, switches, and triggers. Examples of entities without brushes are player start points, light sources, monsters, weapons and other similar items. Non-brush entities can be created with the Create Entity… command under the Special menu. All entities have a list of attributes that define the behaviour specific to that class of entity:
Quiver keeps descriptions of these entities as text files in the Definitions folder, and is designed to be extensible. Definitions for new entities for new Quake add-ons, for example, can just be dropped into the Definitions folder. Adventurous users may want to create their own definitions as the format is fairly easy to understand.
For further information on how to use entities and their attributes, refer to the accompanying Web Resources file for links to some web sites with excellent content.
The Toolbar
The items from left to right are:
Scale tool. By clicking and dragging on the handles (small black squares at the corners of the selection), the objects in the selection can be resized. By clicking and dragging on the objects themselves, they can be translated or moved. Holding down the shift key at the same time constrains the resizing/movement to horizontal or vertical only. Hold down the command key to allow you to select from all the objects under the cursor from a pop-up menu.
Rotate tool. By clicking and dragging on the handles, the objects in the selection can be rotated. Rotation defaults to rotation about the opposite handle, but this can be changed to rotate about the centre by selecting the Preferences (see the Preferences command under the Edit menu below). By clicking and dragging on the objects themselves, they can be translated or moved. Holding down the shift key at the same time constrains the movement to horizontal or vertical only. Hold down the command key to allow you to select from all the objects under the cursor from a pop-up menu.
Shear tool. By clicking and dragging on the handles, the objects in the selection can be sheared or skewed. By clicking and dragging on the objects themselves, they can be translated or moved. Holding down the shift key at the same time constrains the movement to horizontal or vertical only. Hold down the command key to allow you to select from all the objects under the cursor from a pop-up menu.
Face tool. The Face tool allows you to apply textures to individual faces on brushes. It is best for the view to be in texture-mapped mode when using this tool. Select a texture in the texture picker first, and then click on a face (or drag across many faces on many brushes) to “paint” the face(s) with the texture. If the shift key is held down, the texture will be applied to the whole brush. If the command key is held down, the cursor will change to an i and allow you to set various properties for the texture appearance on that face. If the option key is held down, the cursor will change to an eye dropper, and can be used to “pick-up” and select the texture of the face under the cursor. If the command and option keys are held down, the dropper will pick up the texture and texture properties of that face, so you can then paint with the properties as well. If the control key is held down, you are able to interactively drag the texture around on the face.
Box tool. The box tool lets you create a simple box brush by clicking and dragging in a view. Holding down the shift key at the same time constrains the box to equal proportions in all dimensions.
Cone tool. The cone tool lets you create a cone brush by clicking and dragging in a view. Holding down the shift key at the same time constrains the cone to equal proportions in all dimensions. Double-click on the Cone tool to set the number of sides for Cones and Cylinders.
Cylinder tool. The cylinder tool lets you create a cylinder brush by clicking and dragging in a view. Holding down the shift key at the same time constrains the cylinder to equal proportions in all dimensions. Double-click on the Cylinder tool to set the number of sides for Cones and Cylinders.
Sphere tool. The sphere tool lets you create a brush representing a sphere. Holding down the shift key at the same time constrains the sphere to equal proportions in all dimensions. Double-click on the Sphere tool to set the horizontal and vertical divisions. Try to use spheres very sparingly in levels because they require a large number of faces to look reasonable and thus make levels fairly complex.
Wedge tool. The wedge tool lets you create a right-angled wedge. Holding down the shift key at the same time constrains the wedge to equal proportions in all dimensions (resulting in a 45° ramp).
Grabber tool. The grabber tool lets you pan the views to display different areas of a level. Hold down space to temporarily switch to this tool from any other. When in a 3D view (“3D” is selected from the pop-up menu in the window), this tool functions as a walk-through tool. Clicking and dragging changes the orientation of the viewpoint (similar to the mouse-look feature in Quake). If the command key is held down as well, it behaves the same as in the 2D views (moving rather than turning). While the mouse button is down, you can also move forward / back / left / right using the arrow keys or W / S / A / D. To move faster, hold down the shift key.
Zoom tool. Click anywhere in the view to zoom in on that feature. Hold down option while clicking to zoom out.
Coordinates Display. The current 3D coordinates (x, y, z) of the cursor are shown here.
Grid Size. The current grid size is shown here. This can be increased / decreased with the + / - keys. The display is dimmed if Snap to Grid is currently turned off.
Windows
Views
View windows are where the level is rendered. There may be any number of them although using four is the most common technique. With the pop-up menu on the left, they can be set to display a 3D view or 7 types of 2D view (top, front, right, bottom, back, left, isometric). In addition, the rendering method can be set using the icon buttons on the right wireframe, solid shading, or textured. Scrollbars can be used to pan the display area around to another place in the level, except in the 3D view where scrollbars are disabled.
Hierarchy
The Hierarchy window shows a representation of the hierarchy structure of the level. Objects can be selected and deselected just as in the rendered views. Groups can be opened and closed by clicking the disclosure triangles — see the Object menu below for more information. Note that a group cannot be selected while it is open; it must be closed first to select it. The first tick column shows an object’s visibility. The second tick column shows whether an object is locked — see the Object menu below for more information on hiding & locking. Double-clicking on an object will allow its name to be changed. Drag & drop is supported for re-arranging the hierarchy. Objects can be dragged in and out of groups and objects can even be dragged from the Hierarchy window to the rendered views or Hierarchy window of another level, and the objects will be copied to that level.
Textures
The Textures window displays all the textures currently available to use in a level. The currently selected texture(s) are indicated by a blue outline. The name of the currently selected texture is displayed at the bottom-left, and the dimensions of the texture in Quake units are displayed at the bottom-right. To make the Textures window display faster, turn on Cache texture picker in the Preferences. The textures are normally displayed in 64x64 squares, but you can choose to display them at 32x32 by choosing Small textures also in the Preferences. If you already know the name of a texture you can type the first few letters to scroll to it rather than needing the scrollbars.
Quiver initially puts aliases in its Textures folder pointing to the Quake standard textures. More textures can be used in Quiver by adding extra .bsp, .wad, or .pak files (or aliases to them) into the Textures folder, and then re-launching Quiver. Lots of new Quake 1 texture files can be found at Opiate’s Texture Warehouse:
<http://www.planetquake.com/warehouse/>
To create your own or edit textures, the tool of choice is WadTool:
<http://wadtool.quakeintosh.com/>
Texture Groups allow you to break down the large list of textures into smaller, more managable groups. The pop-up menu at the top shows the active group, and allows you to switch between groups. There are two special groups All and Current, plus any number of custom groups. All lists every texture loaded from the Textures folder. Current lists every texture currently in use in the open levels which can be useful for helping maintain a consistent theme in your level. Groups can be manipulated using the commands in the Textures menu (see below), or by clicking in the Textures window with the control key to use a Contextual Menu. Multiple textures can be selected using the shift or command key.
Running Your Level in Quake
When your level is ready to test in Quake, playing your level is simply a matter of choosing Play Level... from the Special menu. Play Level... will first perform the Build command to create a .bsp file from your level, and then open it in Quake.
There are a number of possible errors that can result from trying to compile your level for Quake. The compiling process in Quiver is based upon the QBSP / LIGHT / VIS utilities that are not known for their user friendliness. The QuakeLab has an excellent section for discussing the causes of the most common errors and how to avoid them:
There are several options for the compiling process that can be set with the Build Options... command:
Build currently visible objects only will only attempt to compile what is currently visible. This can be useful for tracking down problems in the Build process by narrowing down the possibilities to find the objects causing the problem. It can also be useful when working with a large level to work on a room at a time to make the Build process faster.
Ignore leaks is useful when you want to quickly (or at least more quickly) see what the level looks like in Quake without being concerned if it is completely sealed yet. This option makes the Build faster by leaving out some steps of the operation that are required for Visibility Optimization, so those options will be disabled when Ignore leaks is turned on.
The Quake App pop-up menu allows you to select your preferred Quake application to use to run the levels.
Lighting enables the light calculations in the Build process to produce the shadows and lighting effects from the light source entities and makes the level look much better. Shadows tend to appear jagged or pixellated unless High quality is turned on (which also takes four times as long).
Visibility Optimization is an important part of the process. This operation pre-calculates what can be seen from every place in the level, and is what gives Quake a huge speed boost. However, compilation can be a very slow process as a result. There are different levels that represent the trade-off between slow Builds and fast levels in Quake. In addition, Quake has a limit to the number of different surfaces it will render at any point. If there are more surfaces to render than this limit, they are ignored, and grey coloured areas (or a hall of mirrors effect with Quake RAVE or Quake 3Dfx) can be seen as artifacts. With the Visibility Optimization, most of the unseen parts of the level can be ignored by Quake which will in most cases cause these artifacts to disappear since there are less surfaces to be considered.
Holding down the option key down while you choose the Build or Play Level command will allow you to change the Build Options settings before continuing.
Quiver’s Build supports transparent water for Quake 3Dfx and Quake RAVE, however this is only available to registered users. Unregistered users are also limited in the number of brushes they can Build.
Menus
Apple Menu
About Quiver... displays the about box for Quiver with the version number and the name of the registered user. You can click on the links to email Scott Kevill (the author) or visit the web site.
Register... lets you enter your name and registration serial number to register Quiver.
Order Online... opens your web browser to Kagi where you can quickly and easily pay for Quiver with your credit card. (See the accompanying How to Register document for instructions on registering including other methods of payment).
File Menu
New creates a new level.
Open… opens an existing level.
Close closes the front-most window. If this window was the last window belonging to a level, the level is closed. Option-Close will close all windows of the current level and close the level itself.
Save saves any changes made.
Save As… saves the level to new file.
Place… imports a .map file and places all the objects into a group in the current level. .map is a common format used by other Quake editors.
Import... creates a new level from a .map file.
Export... saves the current level as a .map file. This feature is only available to registered users.
Quit is self-explanatory.
Edit Menu
Undo where available will undo the changes made by an action. This is currently only implemented for some operations.
Cut / Copy / Paste are currently not implemented. Objects can be copied by Option-dragging or by using the Duplicate command.
Clear deletes the current selection. (Hotkey: Delete or Clear)
Duplicate makes a copy of the current selection.
Select All selects all objects in the level. Open groups will not be selected as they must be closed to be selected. If the Textures window is front-most, all textures in the active group will be selected.
Select None is self-explanatory. (Hotkey: N)
Get Info… allows you to edit the lists of attributes when one or more entities are selected.
World Settings... allows you to edit the special list of attributes that applies to the whole level.
Preferences… shows a dialog that allows you to change a number of global options:
Colours lets you adjust the display colour of various items. Minor gridlines are the lines displayed with the current grid size (which is indicated as Grid: in the toolbar. Major gridlines are displayed at every 64 units regardless of the current grid size.
After creating a new brush, if Sticky creation tools is not checked the previously used selection tool (ie. scale, rotate or shear) will be selected. Option-clicking on a creation tool will temporarily reverse this behaviour.
Normally when performing some kind of dragging operation (eg. scaling or rotating), all views are updated continuously. Delayed updating only updates the current view continuously, and updates the other views when you slow down the mouse movement. This can make it feel more responsive on slower machines.
The rotation tool by defaults to the opposite corner of the bounding box as the axis of rotation for the object. You may instead select the centre by clicking on the radio button.
The default brush size refers to the depth size when using the brush creation tools.
Quiver will normally try to use hardware 3D acceleration where possible, but if you are having problems with display, you may want to try turning this option off. Make sure you have the latest drivers for your 3D card.
Textured and solid-shaded modes will normally be accelerated, but Accelerate Wireframe is optional since it can actually slow down fast machines.
The resolution for the 3Dfx Preview mode (see the 3Dfx Preview command below under the View menu) can be set to either 640x480 or 512x384. This item will be disabled if you do not have a 3Dfx card or do not have the extension “3Dfx RAVE” installed.
The texture picker normally displays the textures directly from disk to save memory. To speed this up (particularly with scrolling), check the Cache textures option. The textures will then be cached in memory after they are loaded.
Autoscroll textures into view will make the textures on the currently selected objects visible in the Textures window.
Small Textures displays the textures in 32x32 squares rather than the default 64x64.
Object Menu
Group places the selected items together in a new group.
Ungroup removes one level of grouping from the current selection.
Open Group allows the contents of a group to be manipulated without having to destroy the group. This can also be done by clicking the disclosure triangle for the group in the Hierarchy window.
Close Group closes the groups containing the currently selected objects. This can also be done by clicking the disclosure triangle for the group in the Hierarchy window.
Hide makes the current selection invisible.
Hide Others makes the current selection visible, and hides everything else.
Show All makes every object visible.
Lock makes the current selection transparent to clicks in the rendered views. This can be very handy if the object you want to select is blocked by another object in front. The front-most object can be locked, and then the objects behind can be selected.
Unlock allows the current selection to be clicked on in the rendered views.
Lock Textures pins the current texture alignment to the selection. If you move/rotate/scale/transform the objects, the texture will remain fixed with them. Pressing the T hotkey will toggle the texture locking for the current selection.
Unlock Textures unlocks the textures for the current selection so they will move through the objects once again.
Reset Textures unlocks the textures and sets all their properties to the defaults.
Flip Horizontal flips the selection horizontally in the current view.
Flip Vertical flips the selection vertically in the current view.
Flip Depth flips the selection into or out of in the current view.
Align to Grid moves the current selection so that the bounding box is aligned with the current grid.
Fit to Grid is similar to Align to Grid except that the bounding box is also resized if necessary to exactly fit the current grid.
Fit Vertices to Grid fits each vertex (point) in the selection to the closest grid point instead of the whole bounding box. Use this command with caution, as there is no checking and the operation can do some nasty things to the selected objects if you are unsure of what you are doing.
View Menu
Create New View creates a new rendered view window. After creating, you can then change the view types.
Arrange Windows is a simple command that will arrange your windows neatly if you have the standard four rendered views.
Cycle Views brings each rendered view in turn to the front.
Zoom In / Zoom Out are most useful in the 2D views. In the 3D views, this just moves forward and back.
Reveal Selection will attempt to scroll each view so that the selection is visible. (Hotkey: Tab)
Snap to Grid turns on the 3D grid to help with positioning and alignment of objects. It is recommended that this be left on for most editing. The grid size can be adjusted with the plus and minus (+ / -) keys. Snap to Grid also enables angle snapping for rotation. (Hotkey: G)
Show/Hide Grid toggles display of the grid lines. Grid lines are not displayed in 3D views, and currently only the minor grid lines are displayed in the Iso views.
Show/Hide Entity Links toggles display of the arrow links between targetted entites. For example, a button set to trigger a door would show a link from the button to the door.
Hierarchy brings the Hierarchy window to the front.
Textures brings the Texture picking window to the front.
3Dfx Preview allows you to view your level (starting with the current view) full-screen using the acceleration of a 3Dfx card. Press Escape or click the mouse button to leave this mode. The view can be controlled with the mouse and the arrow keys or W / S / A / D the same as for the Grabber tool (see further above). This item will be disabled if you do not have a 3Dfx card or if the extension “3Dfx RAVE” is not installed or if Hardware 3D Acceleration is unchecked in the Preferences dialog. The resolution can be set to either 640x480 or 512x384 in the Preferences dialog.
Light sourced… creates a light sourced preview window of the current view, complete with full lighting and shadows. Optimizations are still underway to make this much faster. You can cancel the calculations by pressing Escape or Cmd-Period. Hold down Option to create a larger preview, and hold down Command and Option to create an extra large preview. This feature is only available to registered users.
Special Menu
Create Entity shows the entity selection window and allows you to choose a standard entity to create from the hierarchical list of categories, or by typing the class name directly. This creates a non-brush entity and dims brush entities in the list.
Convert to Entity takes the current selection and forms a brush entity from it. The entity selection window is shown, and you can choose the type of entity as above with Create Entity. This command dims non-brush entities in the list.
Hollow Out makes each brush in the selection hollow by replacing each face with a whole brush that is 8 units thick. This is a very handy way of making simple rooms since you can just create a single box brush, and then Hollow Out. Hold down the Option key to specify the thickness for the one operation. (Hotkey: H)
Carve uses the selected object to carve a hole in the world. This is a very powerful operation that can be used for creating complex-shaped objects. The carving object’s texture is used for the holes resulting from the operation. To restrict the carving to certain objects, select more than one object, and the first will be used for carving while the remainder will be used as the targets. To use more than one object with which to carve, group the objects first.
Build Options / Build / Play Level : See the section above Running Your Level in Quake.
Textures Menu
Tip: Control-click in the Textures to show a more convenient Contextual Menu for a more convenient way of shuffling textures.
Add Textures To... adds the currently selected textures to another group. The All and Current special groups cannot be changed this way.
Remove Textures removes the selected textures from the active group. The All and Current special groups cannot be changed this way. (Hotkey: Delete or Clear)
New Group... creates a new custom group.
New Group From Files... creates a new custom group containing the textures from one or more of the files in the Textures folder.
Rename Group... renames the active group. The All and Current special groups cannot be renamed.
Remove Group... deletes the active group. The All and Current special groups cannot be removed.
QUAKE® is a registered trademark of id Software, Inc. QuakeFinder is not affiliated with or endorsed by id Software. Macintosh is a registered trademark of Apple Computer, Inc.
This archive may be freely distributed as long as it is kept intact and unmodified, and is not charged for (other than reasonable download costs). Quiver may not be sold or bundled with any other product without my prior permission. Quiver may not be included on any CD-ROM without my prior permission.
Users are prohibited from disclosing their registered serial numbers to anyone.
Scott Kevill hereby disclaims all warranties relating to this software, whether express or implied, including without limitation any implied warranties of merchantability or fitness for a particular purpose. Scott Kevill will not be liable for any special, incidental, consequential, indirect or similar damages due to loss of data or any other reason, even if Scott Kevill has been advised of the possibility of such damages. In no event shall Scott Kevill be liable for any damages, regardless of the form of the claim. The person using the software bears all risk as to the quality and performance of the software.
Contact Information
Mailing List:
<quiver@telefragged.com>
To subscribe, send a message with a subject of “subscribe” (no quotes)
To unsubscribe, send a message with a subject of “unsubscribe” (no quotes)
To send messages to the list, use the same address.